----------------------------------------------------------------------------------------
							Infernal Ocean: Denmark Strait
----------------------------------------------------------------------------------------
Created by Geoff Ayre (Wirraway Software) for the Bismarck-themed Flare Path Game Jam.
For more information about Wirraway Software, please visit https://wirrawaysoftware.com
----------------------------------------------------------------------------------------


----------------------------------------------------------------------------------------
1.	Introduction
----------------------------------------------------------------------------------------

Infernal Ocean: Denmark Strait simulates the Battle of the Denmark Strait - an 
engagement between the Royal Navy and Kriegsmarine in May 1941. The German battleship 
Bismarck and heavy cruiser Prinz Eugen are attempting to reach the North Atlantic to 
hunt for Allied merchant shipping; Britain has dispatched a taskforce led by the 
battleship HMS Prince of Wales and the ageing battlecruiser HMS Hood to intercept them.

Two Allied cruisers, HMS Suffolk and HMS Norfolk, have been tracking the Germans 
from a distance. A few hours ago, they lost contact - but the enemy cannot be far away.



----------------------------------------------------------------------------------------
2.	How To Play
----------------------------------------------------------------------------------------

Click and drag to move the camera, and use the mouse wheel to zoom.

Click the 'Map' button in the top right of the screen to open the map. Your ships are 
shown in blue - enemy ships are shown in red. 

Left click a ship to select it, and right click to order it to move. If you right 
click one of your ships, the selected ship will follow it (this effectively allows 
you to divide your force into groups, and makes it easier to control a large force). 

Once you have grouped your ships, clicking a ship will select its group leader - 
click again to select the 'subordinate' ship. 

The visual range of your ships is shown by the grey circles on the map. Visibility
is highly dependent on the weather, which changes randomly over time. In clear 
conditions, your ships will be able to spot enemy battleships at ranges of 30km or 
more - while in heavy rain, visibility may drop to 5km or less.

The maximum gun range of your ships is indicated by red circles on the map. Ships 
will automatically fire on any enemy targets they can see within visual range. You 
can order your ships to hold fire or resume firing at will using the 'RoE' (Rules of
Engagement) button in the bottom right of the screen. The 'Speed' button enables you
to order your ships to move at Full or Half speed - your guns are significantly more
accurate when moving slowly. The 'Shell Type' button enables you to switch between 
High Explosive (HE) and Armour Piercing (AP) shells. In general, HE shells are more 
effective against smaller or less armoured targets, and AP is the opposite. More 
details on the damage model are given below.

Destroyers and British heavy cruisers also carry torpedoes. Torpedoes are slow, 
short ranged (around 4km), and cannot be reloaded once all 4 tubes have been 
fired. However - if they hit, they will cause devastating damage to even the heaviest
of enemy ships. Torpedoes fire from the sides of the ship - to use them, get close 
to the enemy and turn parallel to the enemy ship's course.

Radar range is shown in green on the map. The radar on your ships is quite primitive;
it is not accurate enough to enable reliable blind fire or long-range surface search.
Its primary role is to enable you to detect ships from beyond visual range in poor 
weather conditions.

Clicking the 'External' or 'Bridge' buttons in the top right of the screen will take
you to one of the more cinematic camera views. When in the bridge view, you can 
look through binoculars by pressing B.

Press Space at any time to toggle the UI on or off.



----------------------------------------------------------------------------------------
3. Objectives
----------------------------------------------------------------------------------------

As the Germans, your objective is to reach the North Atlantic (indicated by the 
blue striped zone in the south of the map) with both the Bismarck and Prinz Eugen as
intact as possible. As the British, your objective is to sink or disable the German
ships. 

When every ship on one side has escaped, sunk, or been critically damaged, the game
will end and a score will be shown.
 - Each enemy ship critically damaged grants t/100 points, where t is the 
   displacement of the ship in tons
 - Each enemy ship sunk grants t/50 points
 - Each German ship which escapes to the North Atlantic grants t/50 points to the 
   German player
Your opponent's score is subtracted from your own, giving an overall result.
  -1000 or less - Major defeat
  -999  to -500 - Defeat
  -499  to -250 - Minor defeat
  -249  to  249 - Draw
   250  to  499 - Minor victory
   500  to  999 - Victory
   1000 or more - Major victory
   
An after-action report is saved to a text file each time you play a mission. The 
default location for these reports is:
C:\Users\[username]\AppData\LocalLow\Wirraway Software\Infernal Ocean\



----------------------------------------------------------------------------------------
4. Damage Model
----------------------------------------------------------------------------------------

Ships have belt armour, deck armour, and turret armour. Due to the trajectory of 
shells in flight, belt armour is most important at short ranges and deck armour is 
more important at longer ranges. Turret armour, of course, protects gun turrets.

AP and HE shells penetrate armour differently:
 - HE shells can penetrate between 16% and 40% of their calibre. 
 - AP shells can penetrate between 50% and 150% of their calibre.
For example, a 10" HE shell will penetrate between 1.6" and 4" of armour, while a
10" AP shell will penetrate between 5" and 15" of armour.

If a shell hits a turret and penetrates / defeats its armour, the turret will be 
permanently disabled. 

If a shell hits the hull of a ship and penetrates the armour successfully, the result 
depends on the location of the hit.
 - A hit to the fore or aft magazines (generally located under the main gun turrets)
   has a 15% chance to trigger a magazine explosion, immediately destoying the ship.
 - A hit to the engine rooms or machinery has a 50% chance to cause damage to the 
   ship's machinery. The amount of damage depends on the calibre of the shell. 
   Machinery damage reduces a ship's maximum speed.
 - A hit to the rudder or stern machinery has a 40% chance to jam the rudder, causing
   the ship to lose the ability to steer. 
All penetrating hits also cause hull damage. HE shells also cause a small amount of 
hull damage if they fail to penetrate the armour - this represents superstructure 
damage, damage to unarmoured components, and the gradual weakening of armour plates 
from explosive blasts. Torpedo hits also cause massive hull damage. If hull damage 
reaches 100%, the ship will sink from critical flooding. 



----------------------------------------------------------------------------------------
5. Developer's Notes
----------------------------------------------------------------------------------------

The significant element of chance in naval combat makes truly 'historical' 
results somewhat rare in the game - it is actually more likely for the Prinz Eugen 
to catch a stray shell and suffer a magazine explosion than HMS Hood. However, I 
feel the results of most engagements are at least moderately plausible and realistic.

HMS Suffolk, HMS Norfolk, and the 5 British destroyers are included in the game as
they were in the area at the time of the battle and could plausibly have taken part - 
in the hours before the battle Bismarck actually fired on HMS Norfolk, and the 
destroyers reportedly passed within 20km of the Germans without spotting them.

I am quite pleased with the way the weather system impacts tactics. In poor weather,
destroyers become far more lethal as they are able to rapidly close with the enemy, 
launch a devastating torpedo barrage, and disappear into the fog. In clearer 
conditions, the Bismarck's secondary batteries will make short work of any destroyer 
which gets too close.

The external, bridge, and binocular views are not hugely useful in their current 
state - they are just intended to help build immersion and add a cinematic touch to 
the game. Perhaps in future, the game will evolve into a more detailed warship 
simulator and the bridge will serve a more practical purpose.

Infernal Ocean was created in around 15 days (15-30 October 2020). This was a 
significant challenge, and would not have been possible without the use of some amazing
resources created by others:
 - The ocean is rendered with a custom shader adapted from Ceto (Scrawks Ocean) - 
   one of the best ocean shaders for Unity, now sadly discontinued.
 - The dynamic skybox is a customised solution based on Time Of Day.
 - The 3D model for the Bismarck was created by Potyek.
 - The 3D model for Prinz Eugen was created by Alberto Butarin.
These resources are commercially licensed to Wirraway Software. Everything else - the 
game design, physics, ballistics, weather, AI, damage modeling, control systems, visual
effects, 3D models, UI, etc - were created for Infernal Ocean during the game jam.

Researching, designing, and building Infernal Ocean was a lot of fun and I am
happy with how the game turned out. Everything has been designed with scale in mind - 
so with a bit of adjustment the game could handle much larger battles. Maybe over time,
Infernal Ocean will evolve into something much bigger.


----------------------------------------------------------------------------------------
6. License
----------------------------------------------------------------------------------------

Copyright 2020 Wirraway Software
https://wirrawaysoftware.com

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, 
INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
OR OTHER DEALINGS IN THE SOFTWARE.

Infernal Ocean - Denmark Strait is freeware. You are granted a limited, non-exclusive 
license to use the software. However, you may not sell, publish, distribute, or 
sublicense the software.

